/*
 * table_Linkage.h
 *
 *  Created on: 2012/03/29
 *      Author: guanxiaoying
 */

#ifndef TABLE_LINKAGE_H_
#define TABLE_LINKAGE_H_


typedef struct {
	BOOL (*clear)( VOID );
	BOOL (*reset)( VOID );
	BOOL (*alloc)( AST );
	AST  (*getMax)( VOID );
	AST  (*findLinkage)( AST astSym );
	AST  (*addLinkage)( AST astSym );
	VOID  (*clearRoot)( VOID );
	ACCESS_BOOL_FIELD bExternal;
//	IDX_DECSYMCHAIN
	ACCESS_IDX_FIELD definitionChain;
//	IDX_TENSYMCHAIN
	ACCESS_IDX_FIELD tenDeclChain;
//	IDX_ALLSYMCHAIN
	ACCESS_IDX_FIELD allChain;
//	IDX_ALLSYMCHAIN
	ACCESS_IDX_FIELD definitionSym;
	ACCESS_BOOL_FIELD bReferred;
}CCLINKAGE_ACCESS;
extern const CCLINKAGE_ACCESS stCCLinkageAccess;

#endif /* TABLE_LINKAGE_H_ */
